import java.util.HashSet;
import java.util.Set;

public class NM4 {
    //坏键盘打字；
    //旧键盘上坏了几个键，
    // 于是在敲一段文字的时候，对应的字符就不会出现。
    // 现在给出应该输入的一段文字、以及实际被输入的文字，
    // 请你列出肯定坏掉的那些键。
   // 按照发现顺序，在一行中输出坏掉的键。
    // 其中英文字母只输出大写，每个坏键只输出一次。
    // 题目保证至少有1个坏键。
    //案例：进行输入的字母：7_This_is_a_test
    // 实际进行输出的字母：_hs_s_a_es
    //进行推断出：坏了的键：7TI；
      //解题思路：1.将实际输出的字符串中的每个字母都放入到map集合中；
    //2.进行遍历实际输入的字母，找出集合map中没有的字母；
    //3.进行去重操作；最终获得坏了的键；
    //注意：需要输出坏了的键的大写形式；
    public static void findKeyBoard(String str1,String str2){
        //str1:应该输入的字符串；
        //str2:实际输入的字符串；
        Set<Character> set1=new HashSet<>();
        for(char ch:str2.toUpperCase().toCharArray()){
            set1.add(ch);
        }
        Set<Character> setBreak=new HashSet<>();
        for(char ch1:str1.toUpperCase().toCharArray()){
            if(!set1.contains(ch1)&&!setBreak.contains(ch1)){
                setBreak.add(ch1);
                System.out.print(ch1);
            }
        }
    }
    public static void main(String[] args){
        String str1="7_This_is_a_test";
        String str2="_hs_s_a_es";
        findKeyBoard(str1,str2);
    }
}
